
#pragma once

#ifndef __MSCTRL_HIL_NVME_COMMAND_DELETE_CQ_HH__
#define __MSCTRL_HIL_NVME_COMMAND_DELETE_CQ_HH__

#include "hil/nvme/command/abstract_command.hh"

namespace MsCtrl::HIL::NVMe {

class DeleteCQ : public Command {
 public:
  DeleteCQ(ObjectData &, Subsystem *);

  void setRequest(ControllerData *, AbstractNamespace *, SQContext *) override;

  void getStatList(std::vector<Stat> &, std::string) noexcept override;
  void getStatValues(std::vector<double> &) noexcept override;
  void resetStatValues() noexcept override;
};

}  // namespace MsCtrl::HIL::NVMe

#endif
